Prepare for tinycloud 0.3.20: playable Slack unfurls + entity search (skill floor → 0.3.20) - #29
Merged
Conversation
…(skill floor → 0.3.20) tinycloud 0.3.20 (SDK 0.7.24) adds playable Slack unfurls and entity search (features 42→45, verbs stay 17): - `--link-preview` on `publish` / `publish video` gains a `player` level — the pasted link unfurls in Slack with an inline player via the Cloudglue Slack app (implies the `full` card). A private share plays itself; a site plays the hero share set with the new site-only `--preview-share <share-id>` flag (requires player; "" clears; card-only without one). Public sites take `player` too (their hero must be a public share); public shares already unfurl playable with no flag. Private content plays only in Slack workspaces the account owner connected in the Cloudglue dashboard, anyone who can see the Slack message can play it (every doc surface says ask the user first), and downgrading revokes playback in already-posted unfurls. - entities collections become first-class probe/ask targets (extractions indexed free; tinycloud-created ones are segment-level by default → segment hits with real timestamps), omitting `--scope` is now AUTO (the search picks the level, so probing doesn't require knowing the collection type), and `collections show` file rows gain `searchable_status` (the metadata/entity search-index readiness signal). Because the skill teaches the new flag values and probe semantics, the floor rises to 0.3.20: tinycloud-skill.json min_version/supported_range + required_features (+publish.link.preview.player.v1, +probe.entities.v1, +probe.scope.auto.v1) with preflight.sh kept identical (the CI sync check passes). npm launcher version → 0.3.20 (1:1 with the binary). SKILL.md and reference/verbs.md teach the new surface; CLAUDE.md records the release. Verified: npm test 42/42 (fixture CDN) and 42/42 against a real 0.3.20 darwin-arm64 dist tarball; scripts/smoke-test.sh all-pass against the extracted 0.3.20 binary (EXPECTED_VERSION=0.3.20); preflight.sh exits 0 against it (all 34 required features present); shellcheck clean; claude plugin validate passes.
amyxst
self-requested a review
August 12, 2026 18:01
amyxst
approved these changes
Aug 12, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Prepares the distribution surfaces for tinycloud 0.3.20 (SDK 0.7.24), which adds playable Slack unfurls and entity search (features 42→45, verbs stay 17). npm launcher version → 0.3.20 (1:1 with the binary).
What 0.3.20 adds (and the skill now teaches)
Playable Slack unfurls (feature
publish.link.preview.player.v1):--link-previewonpublish/publish videogains aplayerlevel: the pasted link unfurls in Slack with an inline player via the Cloudglue Slack app (implies thefullcard).--preview-share <share-id>flag (requires--link-preview player;""clears; without a hero the unfurl stays card-only; reported asdata.preview_share_idandlink-preview=player hero=<id>inpublish list).full,playermatters on both site visibilities (a public site's hero must be a public share); public shares already unfurl playable with no flag.full/nonerevokes playback in already-posted unfurls.Entity search + auto scope (features
probe.entities.v1,probe.scope.auto.v1):entitiescollections are first-classprobe/asktargets — extractions are indexed into search documents for free (tinycloud-created entities collections are segment-level by default → segment hits with real timestamps).--scopeis now AUTO (the search picks the right level, so probing no longer requires knowing the collection's type); explicit scopes still force a level.collections showfile rows gainsearchable_status— the metadata/entity search-index readiness signal, distinct from the enrichmentstatus.Changes here
skills/tinycloud/tinycloud-skill.json:min_version0.3.18 → 0.3.20,supported_range>=0.3.20 <0.4.0,required_features+3 (probe.entities.v1,probe.scope.auto.v1,publish.link.preview.player.v1)skills/tinycloud/scripts/preflight.sh:MIN_VERSION+REQUIRED_FEATURESkept identical to the manifest (CI sync check passes)skills/tinycloud/SKILL.md+reference/verbs.md: cheat sheet, probe/ask/collections/publish sections teach the new surface with the ask-the-user-first caveatspackage.json: 0.3.19 → 0.3.20CLAUDE.md: records the 0.3.20 releaseMerge gate
Same pattern as the 0.3.14–0.3.18 floor raises: merge only after the CDN serves 0.3.20 (
channels.stable= 0.3.20 with pinned tarballs + manifest + sidecars), so the raised preflight floor never points at a binary users can't install. Until then the live-CDN legs would fail — they run on push to main, not on this PR.Test plan
npm test— 42/42 against the offline fixture CDNTINYCLOUD_TEST_TARBALL=<real 0.3.20 darwin-arm64 tarball> npm test— 42/42 (launcher verifies/caches/execs the real new binary)scripts/smoke-test.shwithEXPECTED_VERSION=0.3.20against the extracted binary — all passskills/tinycloud/scripts/preflight.shexits 0 against the 0.3.20 binary (all 34 required feature ids present); exits 11 against an older binary (floor enforced)shellcheck install.sh scripts/smoke-test.sh skills/tinycloud/scripts/preflight.shcleanclaude plugin validate .passes>=0.3.20 <0.4.0)Note
Low Risk
Docs, version metadata, and preflight manifest only—no installer or launcher logic changes beyond version strings.
Overview
Bumps @cloudglue/tinycloud to 0.3.20 and aligns the bundled skill with the binary:
min_version/ preflight floor 0.3.18 → 0.3.20, plus three newrequired_features(probe.entities.v1,probe.scope.auto.v1,publish.link.preview.player.v1).SKILL.md and reference/verbs.md now teach 0.3.20 behavior:
--link-preview playerand site--preview-sharefor playable Slack unfurls (with ask-the-user-first warnings), entity collections asprobe/asktargets, AUTO scope when--scopeis omitted, andfiles[].searchable_statusoncollections show. CLAUDE.md documents the release and expects CDNchannels.stable= 0.3.20.Merge is gated on the CDN serving 0.3.20 so the raised preflight floor does not block installs.
Reviewed by Cursor Bugbot for commit eca9eab. Bugbot is set up for automated code reviews on this repo. Configure here.